)+++++++++++++++**+++++++*+++++('(((((((((((('(((''''')))))))))(()())))))(((*************))))+*'$''''''%''''((''''''''))))((())))+++++++++++++++****++++++++('''''''((((((('''(((''''))))))))))))))))))))()(***))****(****((%'%%'$'''''%''''('''''''')))))((((()++++**+++*+++++++++++++++('''''''''''''(((''''(('''((**))))))))))))))))))))))**()****(***'%%$$%%'''''%%''''''''''''''))(()(((())+++*))++*++++++++++*++(''''''''''''''''''''''''''''')**)))))))))))''()))'))()**(((**)(%$$%%%%$''''''''''%%''''''''''(()))))())))+*))))+++++++++++++('''''''''''''''%'''''''''''''''')))))))((())))(((((('))'**)(((*'%$$$$%%%%$''%'''%%%%%%%%%'''''''(()(()))))))*(()+))+***+++++(''''''''''''''''''%%'''''''''''''')))))))))(())))))(('((((')*)(%$''$$$''$$$%%%%%%%''$%%%%%%%%$$'''(()((()))))')++*+++++++++++''''''''''''''''''''''''''''''''''''***********)***))**)(()))***''$%'$$$$'$$$$$%%%%%%''%%%%%%%%%%''%))*)*)****))(*,,,,,+,,,,,,,(((''''''''''''''''''''''''''''''''***+++++++++++++***+++)))*+++'''%%%$$$%%%$$$$$$%%%$$$%%%%%%$%%%')))****+++*+*+++,,,,++,,,,,,*(((''('''''''''%%'''''''''''''''*******+++++++++++**++**+))****(''''''%$$$%%%''%'$%%%'$$%%%%%%%')))))))***)+******+,,,,++,,,+,,(((('''(((''''''''''''''''''''************++++++++**++*++++*****'''''''%%%$%%%%%%$$%%%''$%%%%'))))))))))****++*+******,,,,,,,++*((((('''(((((''''''''''''''*++************++++**++*++***+*+++**(''''''%%%%%''%%$$$$$%%%%%%'))))))))))))))******++*****,,,,,,,++((((((''''((''('(''''''''****)*******)***)**++**********+*******'''''''%%%%''''%%$$$%%%%')))))))))))))))))******++***,*,,,,,+++)((((('''''('''''''('''***************)*)*))++******************'''''''%'''%''%'%%%%'%')))((()*)(())))))))))******++++,,,,++++++'(((((((''''''((''(('))********+********)))*++*********)******++''''''''''%''%%%'%%'%)))***)(*))((()))))))))******++++**,,+++++)'''(((((('''''''''(('))***))**++********))**)*+*+++********++)))'''''''''%'%''%%%%%''))*(((***))((((())))))))******++*+,,,+++++'(''(('((''''''''''''))))*+++*****))**********++++***********+++''%%''''%%%'%%''%%%%'(()'(((**)))((((())))))))*******+++*,,++++)((('(('''''''''''''''))*)**+++*****************+*****))*******+(%%%''''%%%%''%%'%%%%%(()'()))*))))(((((()))))))******++****++,,''(''(('(('''''(('''')****)***********))**)))))*+*****))))******''%%'''''%''''%%%'%'''(''''))(**))))(())()))))))*******+*****++*''(''(((('''''''(''(')****)++))))*****)**)))**)**+*****)))*****(''%''''%'''''''%''%%%'('''((((()))))(()))()))))))*********+***+''(('''(((''''''''''()))*))(()))))********)))****)******+*******''''''''%''''%%'%%%%%'''''((((((((())(()))))))))))*********,,**)''''''''(('''''''''''())))))))))))******))******)))************('''''''%%''''''''%%'%'''''((()(((((**(())))))()))))******+++**+'(''''(('''''''''''''((((())))))))*******)******))))************''''''''%%%'%''''%%%''''''''(((((((()*()))))))()))))******+****((('''(((''''''''''''')())())))())))************))))))**********(''''''''%%%%'''%%%%'')'''''''('((((*))))))))*))))(*))*****+****''''''(('''''''''(((')))))))))((())))******)**))))))))**********'''''''''%%%%''%%%%%'('''''''('))*((**)))))))*)*))()))*****+++*('''''''''''''''''(((')))))))))((())))*))*)*)**)))))))))********('''''''''%%%%'''''%%'('''')'((()(*))))))))))))***))))))*****+**'''''''('''''''''''''))))))))))))(())****)))**))))))))))********'''''''''''%%%'%'''%%(')))''''(()(')))))))))))))))))))))*******(''''''(((''''''''''''))))))))))))(()******)*)))))))))))))******('''''''''%%''''%'''%%(')((((')(((''))))))*)))))))))))))))***++*'''''''((''''('''''''))())))(())())((********)))))))))))))******''''''''''%''''''''''(()))(()))(('((())))))))*))))))))))))***++)'''''''(('''((''(('''))()))((())())(()***))**))))))))))))))****('''''''''''''''''''''(()')(()''((')(()))))*)**())))))))))))****''''''''('''''''''''')))))))(()))))))(()**)*))*)))))**))))))****'''''''''''''''%%%'''((()(')))'''())((()))))**)())))*)))))))***(''('''(('''''''''''''))))))))))(())))(()*******))))))))))))))**(''''''''''''''''%''''(('((')))((((((((()))))**))))))**)))))))**''''''''''''''''''''')))))))*))(())))))()******)))))))))))))))**'''''''''''%'''''''''(((()'''')'(()'((((()*)))))))*)))*)))))))*%''''''''''''''''''''(*(())))*))(()))())))**)))))))))))))))))))'%'''''''''''''''''''''('')''(('''((('(()(()***)))))*())))))))))'%%%%'''''''(((''''''(*****))))(())))((())))*)))*))))))))))))'%%%%%%%''''''''''''%'''''''')''(''))((((())(('(***)))****))))))'%%%%%%%%%%'''((((''''''(*******))(()))))())))))))*****))))))'%%%%%%%%%%'%%'''''''''%''''())))'''')))((((())())*))***))+*(())'%%%%%%%%%%%%%%%%''((''(('')(()****)))))))))(())((()******)))'%%%%%%%%%%%%''%%%%%'''''''%''(())))''''(())))()))))))))***))))*'%%%%%%%%%%%%%%%%%%%%''((''('')(())))))))))(()))))(())*))))**'%%%%%%%%%%%%%%'''%%%%'%%'''''%''((()))))))))))))))))(())***))))'%%%%%%%%%%%%%%%%%%%%%'%''''''(')))**)))))))))())))))(())()))'''%%%%%%%%%%%%%%%%''%%%%''$''%%''%)(()))))))'))))))))))())''**('%'%%%%%%%%%%%%%%%%%%'%%''''''''''*))++++*))****+*******)*****'%%%%%%%%%%%%%%%%%%%%%%%''%%%'''%%%%)**********((************(**'''%%%%%%%%%%%%%%%%%%%%'''''''''''***,,,,,,,,,+++,,,+**++++++++'''%%%%%%%%%%%%%%%%%%%%%%%%%%%''%''*))++++*+++++)))+++++++++++++'''''%%''%%%%%%%%%%%%%%%''''''''*++***+,,+,,,,,+++,,++**+++++++(''''''%%%%%''%%%%%%%%%%%%%%%%%''*******+++*+++++)))++++++++++)))'''''''''%%%%'%%%%%''%%%%''''**))*+**++,+++,,,++++,++++++++++++''''''''''%%''%%%%%%%%%%%%%%%'))********++++++++++++++++++++++++'''''''''('%%%%%%%%'%%%%%%')***)))****+))++,,,,++++++++++++++++)'''''''''''''%%%%%%%%%%%%%'))))))********++++++++++++++++++++++)''''''(''''''%%''%%'%%%'))))****)****+++*++,,,,+++++,+*++++++++'''''''''''''''''%%%%%%%')**)))))****)****++++++++++++++++++++++''''(('''''''''''%%'%'))*+))))+++*****))***++,,++++++,**+++++++)''''''''''''''''''''%'*)*)**))))***)))*****++++++++++++++++++++)''''''''''''''''''''%()))*+))))+++****+)**+,++++++++,++++++++++'''''''''''''''''''''()**)))*********)******++++++++++++++++++++'''''''''''(('''''''(()))))++)))++++**+++**+++++++++,,,++++++++)'''''''''''''''''''''()*)))))****************++++++++++++++++++)'''''''''''''''''''((*))++))++))+++***+++*****++,,+++,+++++++++'''''''''''''''''''''(()))))*)))**)***********++++++++++++++++++''''''''''''''(''''''*())*+))**+++++))**++****)++,,,+++++**++++)'''''''''''''''''''''()()****)))***************++++++++++++++++)'''''''''''''((('''''))))())))*++++)))*********+++,++++++++++++'''''''''''''''''''''))))))*********************++++++++++++++++'''''''''(''''''''''')))(*())))*+++*))********++*++++++++++++++)''''''''''''''''''''')))))))*********************++++++++++++++)''''''''(''('''''''''))())))))))++***********)***++++++++++++++'''''''''''''''''''''))))))((*********************++++++++++++++''''''''((''''''''''')))())))*))+++***++***))))****++++++++++++)''''''''''''''''''''')))))((()***********)*********++++++++++++)'''''''''(((((''''''')))))))))))+++***++***)*******++++++++++++'''''''''''''''''''''))))))))(**********************++++++++++++'''''''''(((((((((''')))))))))))))))***++************)+++++++++)''''''''''''''''''''')()(((())***********************++++++++++)'''''''(('''('''''''')))(()))))())))****+)***********))+*++++++'''''''''''''''''''''))(((((()(()***)*****************++++++++++'''''''((('''''''''((**))*))))))())+*****************))++*+++++)'''''''''''''''''''''))(()((())))********************++++++++++)'''''''((''''''''''((**))*)))))))()+*****************))+**+++++''''''''''''''''''''')))(())())))))++*****************++++++++++'''''''''''''(''''''')*))))))))))))********))******(***))**++++)''''''''''''''''''''')))))))))**)))**********************++++++)''''''''''''(('''''(()*)))))))))))))*******))******(**)))******'''''''''''''''''''''))))))))))*()))(*********************++++++''''''''''''''((''''()))))*))))*)))))***********((****)))))****('''''''''''''''''''''))()**)))))))))(**********************++++(''''''''''''''(''''('))))(())))*)))))()**(((****(******)(*)****'''''%''''''''''''''')))))**)))))))))()*********************++++'''''''''''''''('''((*)))))))))))))))))*)))(((**********))())**('''''%''''''''''''''')))))***())))())*)******************+***++)'''''''''''''''('(''()))))))))()()))(())))**(*****))***))))()**'''''''''''''''''''''))))))()((((((*))*))*********************++'''''(''''(('''''((''))))))))(((*())((()())*+**))******)*)))()'%''''''''''''''''''''')))))))*****((***)))*********************''''(''(''''''''''''''')))))))))()*))((())(())+)***(*)***)**)'$$%%%%%'''''''''''''''''))))))))(********)))))*******++********''''''''''('''''''''(''''))**)))))))))))**())(()()))**()))))('''%%$'''%%%%%''''''''''''''()))))))())))))*****))******)*******''''''''''''''''''''''(((((())**)))))))))))****)))((())))+*))''$'''%%'''%%'%%%%%%''''''''''(()))))))())))))*****)))++********'''%''''''''''''''''('''''''((*))***))())))(()****())()****++'%%$''%%%'''''%%'%''%%%''$'''''''(()))******)**))********+******''''''''''''''''''''''''''''')(((**))*)((()))))(((*((())(())*'''$$$$%%%%$'%%$$%%'%%%%%''''$%%'''((())))********)))***)***)**+(''''''''''''''''''''''''''''''()('))+))))(((**)**)))++)**))))%%%'''$$$%%%$$%%$$$$'%%%%'%'''$%%%%'*)*)*)****+**+++****++**+***''''%''''''''%''''''''''''''''''''''***++*****+++++*+*,,,))+***'''%%''$$$$$$$$%%%$$%$$$%%'%%'$$%%'***+++)**++++++,,,++++,,++,,,'((''''''''''''''''''''''''''''''''+++,+,,+**++*,,,+*+++,,*+++*)%''(''$$$%%$$$$$%%%%%%$$%%%'$$$%())*))*+))))+++++,,,+++,++,++,,*(((('''''''''''''''''''''''''''(**+++++,+++***+**++*++++++,++**''''(''%%%$$$$$$''%%%%%$$$%'$'(*)))))))*+*++)++++*+,**+,,,,,,+,,'((((((('(''''''''''''''''''''*+++*+++++**++***+++++**++++*,++*(''''''''%%%%%$$$''%%%%'%%%'*()(****))***)*++)+**+*+**,,,,,,,,,-+'(((()((((('''''''''''''%''*****++**+++))*,+***,++****++++*****'''''''(''%%%%%%'%$$$$$'')(((((((****)))))*+*)***++***,,,+,,,,,-))(((()((((''''(('(''''''***+++**+++++)+))*,****,,*****+++*****(''''(((((''''''%'''%$')))))(((())))**))))))*****+++**++++,++,,,+)((((((((((((''((()(''*+*****+++++++++)++))+****,,++*,,,,******'''''(''('''''''%'''%'()))))((()))))*))**)))*****++****++,,,,+,,(((((((((((((((''((((*)*++++*+++++))+++++***+*****++++,,,,*****('''%(('''''''''''''''(()))))()))))())))))))))****++****+++,,,++*(((((()((((((()'')(((+)*++++++++++++++++**)********+++,,,,*,***''''((((('''''''%'''')))))))((()))))))))))))*)****+++**+++**,,,+((((((())(((((')))))(*++)*++++*++++++++++++)++,*****+++**,*,,,*(''''((('''''''''%'''''))))))*)())))))))))*))**)**++++**+++**,,,*((((((()))((()))))))(****++++++++++++++++++++++*,***++,,,***,*,('''(((('''((''''''''(((((()(())**))())())))))))****++**)),**,**'(((((()))))(()()))))*****++++++++++****)***++*)*,***++,,,,,***((('''((''''((''''''''((((()**()****)((()))**)))))**,*******+,,*('((((()))))))())())))****+++++++*+++***)))**++*))****,**,,,,,**'(('''(('''''''''''''((((((()*)))*)*))))**))))))))***********++*''((((())())))())()))++***+++++++++++**+))**))))*)++**,**,,,,,**('''''((''''((''((''')))))(((**))))))))))))))))))))*)*********+('''))(()((())(())))))++++++++++++++++*++++**))))***+++,**,*****((''''''(''''''''((''(())))(())*))))))))()))))))))))*****++++***'('())((((((((((())))+++++++++++++++****++**********++,********(('''''''''''''''''''')((())(())*))**)))***)))))))))))***++,++**)''('))((((((((())))))+++++++++++++++****++*)***+++*))+*********(((''''''''''''''''('))((())(()))*))***)****))))))))))****+,,,,+'''(()))(('((((()))))++++++++++++++++++*****)****+++)*+****,****(((((''(('''('''((((')))()))())))*))*********))))))))))++***+,,)'''((()'''''(((()()))++++++++++++++++++**********+++*******,+**(((((((((((''(('(((('))))))))))))))**********))))**)))))++****++'''''(('''''''((())))+++++++++++**+++++++**********++**)****++**(((((((((((('''''((''))))))))))))))***))**)*)))))**)))))******,*''''('''''''''((((())+++++++++++***++++))++++*******)+*)*+*++++((((((((('(((''''''''))))))))))))))))******)**)*)))))))))******,(''''('''''(('(((((()+**++++*++++++*)*+++++++++***++*)++**++,++)''''(('('''('''''''''))))))))))))))))***********))))**)))))****(''''''((''''(((((''')+***++++++++++))*+++++*+++++++++*++***+,**'('''''''''''''''''''))))))))))))))))))**********))))*))))))****'''''''((''''((((('''*+***))))***++*)))+++++*)*++++++*****))+**(((('''''''''''''''''')))))*))))))))))))**********))**))))))))**('''''''((''(((((((''(*+***)))******))**++*+**)+++++++++***)))**''('(('(('''(''''''''))))))*)))))))))))))*********))**))))))))**''''''''(''''((((((''*******))******)*******+++++++++++++++)))*%''''((''(''''('''''''))))))))))))))))))))*********))))))))))))'%'''''''''''''''''''''************+*********++++********+++**))'''%%''''''''''(''''''))))))))))))))))))))))********)*)))))))'%%%%%%%'''''''''((''''''))**))******)+******))+++++************'''''''%%%%''''''''''''''))))))))))))))))))))))*******))*))))''%%%%%%%%%%%%''''''''''''''))***))***))*******)))*++++*********('''%%''''%%%'%''''''''''''))))))))))))))))))))))))*******)))''%%%%%%%%%%%%%%''%%''''''''''******)))***)********)))*********)'''''''''''''''%''''%''''''''')**)))))))))))))))))))))******)'''%%%%%%%%%%%%%%''%%%%''''''''''******))))***********))*+******'%%%''''''''''''''%%''''''''''''))*)))))))))))))))))))))))***'''%''%%%%%%%%%%%%%%%'%%%%%'%%'''''**)***)))))***********)******'''''%'%%'''''''''''''''''''''''''****************************''''''%%%%%'''%%%%%%%%%%%%%%%%%%''''************+++++*++++***+++''''''''''''''''''''''''''''''''''***++++++++++++++++++++++++++'''''''%'''''''%%%%%%%%%%%'''%%%%''*+*++++++,,,++,,,,++++,,++++,'''''''''''''''''%%%''''''''''''*******++++++++++++++++++++++++)''''''''''''%%%%%''%%%%%%%%%''%'**+++**+++++,,,,,,,,,++++,+++++)'(('''''''''''''''%''''''%''(+*********++++++++++++++++++++++++''''''''''''''%%%''''%%%%%%'%'+++**+****++++,,,,,,,+,,,+,,,,++++''''''''''''''''''''''''''')*++**********++++++++++++++++++++++)'''''''''''''''%%%%%%%%%%''*))+++********,,,,,++,++,,,+,,,,,+++)(('('''''''((''''''''''(+++******+*******++++++++++++++++++++++'''''''''''''''''%%%%%%%')**))**)********+,,,,++++++,,,,,,,,,+++(((((''''''''(''''''''+++++******+**+******++++++++++++++++++++)'''''(''''''''''''''%')))*******))*)*****++++++,,++,,,,,,,,,,++*((('''''''''(''''(((')*++++********++****++++++++++++++++++++++''''''(('''''''''''''(())***))****)*)*****+*++++,,+++,,,,+++++++(((''''('''((('''''''))*+++++*+****+*******+*++++++++++++++++++)'''''''('''''''''''''(())*********++++******+,++++++++,,,,++++,)'('''''(((((((''''''')))+++++++++*++*********++++++++++++++++++'''''''''''''''''''''(((())********++++*******++,+++++++,,,,+++,'''''''''((((('''''''****+++++**+++++++*++*****++++++++++++++++)'''''''''''''''''''''(())**********************+,+++,,,,,,,++++*''''''''''((('''''''(*****+++++++*+++++++++****+++++,++,,+++,++'''''''''''''''''''''(()))())****)********++++**++++++,,,,,,+,,+('''''''''''''''''''')*****+++++++**++++*++******+++,,,,,,+++,+)'('(''''''''''''''((')))((())***))******++++++***++++++,+,,,,,,)''''''''''''(((''''''))*****++++++++++++*++****+++++++,,,++++++((('(''''''''('''''(())))((()***)))*********+++***++++,+++,,,,,,'''''''''''''(((((((')))****)++++++++++++**+***++++,,,+++++++++)((('''''''''''(''''''))))((()**********************++,,+++,,+++)''''''''(''''''(((((')*******)+++++++++++**++**++**+,,++,+++,,+'(((''(''''''''''''''(())()(()))********************+,,,++++++++'''''''''(''''''(((((*********++++++++++++++++)+****+,++,,,++,+)'((((((''''''''''''''))()))))))))))***)**************,,,+++++++)'''''''''''''''''((((*******++++++++++++++++++++*++**,+++,,,+,,''(((((('''''''''''''())))))))))()*)**))******++******,,,,,,,+++'''''''''''''(('''''(********++++++++++++++++++++*+++**+++,,,,,*''((('(('''('''((''''())))))))))(**************+******+,,,,++++)'('''''''''''(''''''(********++++++++++++++++*++++*++**+++++,++'''('(('(''((('''''''*))))))))))))))*****************+**,,,,++++'((('''''''''''''''''*********++++++++++++++++**++++++***+++,++*'((((((((''((''''''''**))))))))()(()*****************+***+,,,++)'((('''''''''''''''''*))***)***++++++++++++++++++++++++**+,+++,('(((((((('((''''''''))()))))((((((()*********************++,+++(('''((''((''''''''''))))***)****+++++++++++++++++++**+++*+,+++*('''''((((((('''(('''))))))))))))))))**********************++++)(('''''''(('''''''''')))++**)+***++++++++++++++++++++++++++,+++('((('(((((((('''((''()))))))))))))))))**********(**********++++(((''''''((((('''''(())(((+**+***+++++++++++++++++++++++**+++,,)'((((((((((((('''''''))))))))))))))))))*********((***********++)((('''''''(((('''''''))((((++***+++++++++++++++++++++++*+++++,,(((((((((((((((''''''()))))))))))))))))))**********************)''(('''''''(((''''''')))((((+++